package net.cloudcodex.shared.rpc;

import net.cloudcodex.shared.dto.Result;
import net.cloudcodex.shared.dto.home.HomeDTO;

import com.google.gwt.user.client.rpc.AsyncCallback;

/**
 * The async counterpart of <code>HomeRPC</code>.
 */
public interface HomeRPCAsync {

	/**
	 * @return user informations for home page.
	 */
	public void getHome(AsyncCallback<Result<HomeDTO>> callback);

	/**
	 * Temporary utility method to register a user. Nickname must be unique.
	 * @param nickname nickname of the user to register.
	 */
	public void register(String nickname, AsyncCallback<Result<Boolean>> callback);

}
